﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Generic.Contract;
using Contract.Business.Entity;

namespace Contract.Business.Filter
{
    //Criado por : Gustavo
    //Data       : 11/26/2011 12:44:45 AM
    public class FEVendaItem : FilterEntity
    {
        #region Atributos

        private BEProduto _Produto;
        private int? _CodigoProduto;
        private BEProduto _ProdutoMetade;
        private int? _CodigoProdutoMetade;
        private decimal? _ValorUnitario;
        private decimal? _ValorTotal;
        #endregion

        #region Propriedades
        public BEProduto Produto
        {
            get
            {
                return this._Produto;
            }
            set
            {
                BEProduto previousValue = this._Produto;
                if ((previousValue == null) || (!previousValue.Equals(value)))
                {
                    this.SendPropertyChanging();
                    this._Produto = value;
                    if (value != null)
                    {
                        this._CodigoProduto = value.Codigo;
                    }
                    else
                    {
                        this._CodigoProduto = default(int);
                    }
                    this.SendPropertyChanged("Produto");
                }
            }
        }

        public int? CodigoProduto
        {
            get
            {
                return this._CodigoProduto;
            }
            set
            {
                if (this._CodigoProduto != value)
                {
                    this.SendPropertyChanging();
                    this._CodigoProduto = value;
                    this.SendPropertyChanged("CodigoProduto");
                }
            }
        }

        public BEProduto ProdutoMetade
        {
            get
            {
                return this._ProdutoMetade;
            }
            set
            {
                BEProduto previousValue = this._ProdutoMetade;
                if ((previousValue == null) || (!previousValue.Equals(value)))
                {
                    this.SendPropertyChanging();
                    this._ProdutoMetade = value;
                    if (value != null)
                    {
                        this._CodigoProdutoMetade = value.Codigo;
                    }
                    else
                    {
                        this._CodigoProdutoMetade = default(int);
                    }
                    this.SendPropertyChanged("ProdutoMetade");
                }
            }
        }

        public int? CodigoProdutoMetade
        {
            get
            {
                return this._CodigoProdutoMetade;
            }
            set
            {
                if (this._CodigoProdutoMetade != value)
                {
                    this.SendPropertyChanging();
                    this._CodigoProdutoMetade = value;
                    this.SendPropertyChanged("CodigoProdutoMetade");
                }
            }
        }

        public decimal? ValorUnitario
        {
            get
            {
                return this._ValorUnitario;
            }
            set
            {
                if (this._ValorUnitario != value)
                {
                    this.SendPropertyChanging();
                    this._ValorUnitario = value;
                    this.SendPropertyChanged("ValorUnitario");
                }
            }
        }

        public decimal? ValorTotal
        {
            get
            {
                return this._ValorTotal;
            }
            set
            {
                if (this._ValorTotal != value)
                {
                    this.SendPropertyChanging();
                    this._ValorTotal = value;
                    this.SendPropertyChanged("ValorTotal");
                }
            }
        }


        #endregion
    }
}
